7e851eac699b8019c7d182978e3a0882eae42b8b,platform/lang-api/src/com/intellij/lang/folding/CustomFoldingSurroundDescriptor.java,CustomFoldingRegionSurrounder,surroundElements,#Project#Editor#PsiElement[]#,137

Before Change


      String linePrefix = commenter.getLineCommentPrefix();
      if (linePrefix == null) return null;
      int prefixLength = linePrefix.length();
      int startOffset = elements[0].getTextRange().getStartOffset();
      int endOffset = elements[elements.length - 1].getTextRange().getEndOffset();
      int delta = 0;
      TextRange rangeToSelect = new TextRange(startOffset, startOffset);
      String startText = myProvider.getStartString();
      int descPos = startText.indexOf("?");
      if (descPos >= 0) {
        startText = startText.replace("?", DEFAULT_DESC_TEXT);
        rangeToSelect = new TextRange(startOffset + descPos, startOffset + descPos + DEFAULT_DESC_TEXT.length());
      }
      editor.getDocument().insertString(endOffset, "\n" + linePrefix + myProvider.getEndString());
      delta += myProvider.getEndString().length() + prefixLength;
      editor.getDocument().insertString(startOffset, linePrefix + startText + "\n");
      delta += startText.length() + prefixLength;
      rangeToSelect = rangeToSelect.shiftRight(prefixLength);
      TextRange formatRange = new TextRange(startOffset, endOffset).grown(delta);

After Change


      String endString = "\n" + linePrefix + myProvider.getEndString(); 
      editor.getDocument().insertString(endOffset, endString);
      delta += endString.length();
      editor.getDocument().insertString(startOffset, startString);
      delta += startString.length();
      rangeToSelect = rangeToSelect.shiftRight(prefixLength);
      PsiDocumentManager documentManager = PsiDocumentManager.getInstance(project);